KDE 上代理设置不生效的问题

KDE 的系统设置中已经提示了,一些应用程序可能不会使用这个代理。因为在 Linux 上有很多配置代理的方式,不同的应用程序可能读取了不同的配置。 而 KDE 的系统设置使用的是自家的 KConfig,基本只有 KDE 自己支持,很少有其他应用程序兼容。

1$ kreadconfig5 --file kioslaverc --group 'Proxy Settings' --key httpProxy
2localhost 7890
3
4$ cat /home/planc/.config/kioslaverc 
5ProxyUrlDisplayFlags=15
6
7[Proxy Settings]
8NoProxyFor=
9Proxy Config Script=
10ProxyType=1
11ReversedException=false
12ftpProxy=localhost 7890
13httpProxy=localhost 7890
14httpsProxy=localhost 7890
15socksProxy=localhost 7890

大部分应用程序采用 gsettings 中的代理配置:

1$ gsettings list-recursively | grep proxy
2org.gnome.evolution.shell.network-config proxy-type 0
3org.gnome.evolution.shell.network-config use-http-proxy false
4org.gnome.system.proxy autoconfig-url ''
5org.gnome.system.proxy ignore-hosts ['localhost', '127.0.0.0/8', '::1']
6org.gnome.system.proxy mode 'manual'
7org.gnome.system.proxy use-same-proxy true
8org.gnome.system.proxy.ftp host 'localhost'
9org.gnome.system.proxy.ftp port 7890
10org.gnome.system.proxy.http authentication-password ''
11org.gnome.system.proxy.http authentication-user ''
12org.gnome.system.proxy.http enabled false
13org.gnome.system.proxy.http host 'localhost'
14org.gnome.system.proxy.http port 7890
15org.gnome.system.proxy.http use-authentication false
16org.gnome.system.proxy.https host 'localhost'
17org.gnome.system.proxy.https port 7890
18org.gnome.system.proxy.socks host 'localhost'
19org.gnome.system.proxy.socks port 7890

少数应用程序使用环境变量中的代理配置:

1$ env | grep proxy
2no_proxy=localhost,127.0.0.0/8,::1
3ftp_proxy=http://localhost:7890/
4https_proxy=http://localhost:7890/
5http_proxy=http://localhost:7890/
6all_proxy=socks://localhost:7890/